package Activemq;

import Redis.Rdo;
import jakarta.jms.JMSException;
import jakarta.jms.Message;
import jakarta.jms.TextMessage;
import org.apache.activemq.command.ActiveMQTextMessage;
import org.apache.activemq.transport.nio.SelectorSelection;
import redis.clients.jedis.Pipeline;

public class Card extends C2Component{
    //消息队列的名称么
    private String QUEUE_NAME;
    private int Statue;//设置小车状态
    //id 代表是小车的id
    /**
     * 构造函数
     * @param host 主机地址
     * @param port 端口
     * @param user 用户
     * @param pwd 密码
     */
    //name代表小车的名字呗
    public Card(String host, int port, String user, String pwd,String id,String rip,int rport) {
        super(host, port, user, pwd,id,rip,rport);
        this.queue="card"+this.id;
        // TODO Auto-generated constructor stub
    }
    //主要运行逻辑，
    @Override
    public void run()
    {
        while(toWork)
        {
            //开始监听消息
            if(reciever != null && !reciever.msgList.isEmpty())
            {
                //System.out.println("消息个数:"+reciever.msgList.size());
                //接收器队列中是否有消息

                    // 取出一个消息
                    TextMessage msg = reciever.msgList.poll();
                    //处理消息
                    try {
                        //格式为move time
                        String aim= msg.getText();
                        if(aim!=null)
                        {
                            // 使用 split 方法将字符串按空格分隔
                            String[] parts = aim.split(" ");
                            String action=parts[0];
                            String time=parts[1];
                            this.rdo.move(this.id,time);
                        }
                    } catch (JMSException e) {
                        throw new RuntimeException(e);
                    }

            }

        }
    }

}
